package com.zheng.hr.dao.model;

import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import com.zheng.common.base.BaseEntity;
import com.zheng.common.base.PageEntity;

/**
 * <p>
 * 
 * </p>
 *
 * @author likun
 * @since 2018-05-07
 */
@TableName("hr_attendance")
public class HrAttendance extends PageEntity {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	private Integer id;
	@TableField("user_name")
	private String userName;
	private Date time;
    /**
     * 应打卡天数
     */
	@TableField("supposed_days")
	private Double supposedDays;
    /**
     * 实际打卡天数
     */
	@TableField("actual_days")
	private Double actualDays;
    /**
     * 异常打卡天数
     */
	@TableField("exception_days")
	private Double exceptionDays;
    /**
     * 请假天数
     */
	@TableField("leave_days")
	private Double leaveDays;
    /**
     * 出差天数
     */
	@TableField("travel_days")
	private Double travelDays;
    /**
     * 外出天数
     */
	@TableField("out_days")
	private Double outDays;
    /**
     * 加班天数
     */
	@TableField("overtime_days")
	private Integer overtimeDays;
    /**
     * 加班小时
     */
	@TableField("overtime_hours")
	private Integer overtimeHours;
    /**
     * 应打卡次数
     */
	@TableField("supposed_count")
	private Integer supposedCount;
    /**
     * 实际打卡次数
     */
	@TableField("actual_count")
	private Integer actualCount;
    /**
     * 异常打卡次数
     */
	@TableField("exception_count")
	private Integer exceptionCount;
    /**
     * 补卡（非正常打卡）次数
     */
	@TableField("supplement_count")
	private Integer supplementCount;
	private String remark;
    /**
     * 年假天数
     */
	@TableField("annual_leave_days")
	private Double annualLeaveDays;
    /**
     * 事假天数
     */
	@TableField("normal_leave_days")
	private Double normalLeaveDays;
    /**
     * 病假天数
     */
	@TableField("sick_leave_days")
	private Double sickLeaveDays;
    /**
     * 调休假天数
     */
	@TableField("off_leave_days")
	private Double offLeaveDays;
    /**
     * 婚假天数
     */
	@TableField("marital_leave_days")
	private Double maritalLeaveDays;
    /**
     * 产假天数
     */
	@TableField("maternity_leave_days")
	private Double maternityLeaveDays;
	@TableField("paternity_leave_days")
	private Double paternityLeaveDays;
    /**
     * 其他假期天数
     */
	@TableField("other_leave_days")
	private Double otherLeaveDays;


	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public Date getTime() {
		return time;
	}

	public void setTime(Date time) {
		this.time = time;
	}

	public Double getSupposedDays() {
		return supposedDays;
	}

	public void setSupposedDays(Double supposedDays) {
		this.supposedDays = supposedDays;
	}

	public Double getActualDays() {
		return actualDays;
	}

	public void setActualDays(Double actualDays) {
		this.actualDays = actualDays;
	}

	public Double getExceptionDays() {
		return exceptionDays;
	}

	public void setExceptionDays(Double exceptionDays) {
		this.exceptionDays = exceptionDays;
	}

	public Double getLeaveDays() {
		return leaveDays;
	}

	public void setLeaveDays(Double leaveDays) {
		this.leaveDays = leaveDays;
	}

	public Double getTravelDays() {
		return travelDays;
	}

	public void setTravelDays(Double travelDays) {
		this.travelDays = travelDays;
	}

	public Double getOutDays() {
		return outDays;
	}

	public void setOutDays(Double outDays) {
		this.outDays = outDays;
	}

	public Integer getOvertimeDays() {
		return overtimeDays;
	}

	public void setOvertimeDays(Integer overtimeDays) {
		this.overtimeDays = overtimeDays;
	}

	public Integer getOvertimeHours() {
		return overtimeHours;
	}

	public void setOvertimeHours(Integer overtimeHours) {
		this.overtimeHours = overtimeHours;
	}

	public Integer getSupposedCount() {
		return supposedCount;
	}

	public void setSupposedCount(Integer supposedCount) {
		this.supposedCount = supposedCount;
	}

	public Integer getActualCount() {
		return actualCount;
	}

	public void setActualCount(Integer actualCount) {
		this.actualCount = actualCount;
	}

	public Integer getExceptionCount() {
		return exceptionCount;
	}

	public void setExceptionCount(Integer exceptionCount) {
		this.exceptionCount = exceptionCount;
	}

	public Integer getSupplementCount() {
		return supplementCount;
	}

	public void setSupplementCount(Integer supplementCount) {
		this.supplementCount = supplementCount;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Double getAnnualLeaveDays() {
		return annualLeaveDays;
	}

	public void setAnnualLeaveDays(Double annualLeaveDays) {
		this.annualLeaveDays = annualLeaveDays;
	}

	public Double getNormalLeaveDays() {
		return normalLeaveDays;
	}

	public void setNormalLeaveDays(Double normalLeaveDays) {
		this.normalLeaveDays = normalLeaveDays;
	}

	public Double getSickLeaveDays() {
		return sickLeaveDays;
	}

	public void setSickLeaveDays(Double sickLeaveDays) {
		this.sickLeaveDays = sickLeaveDays;
	}

	public Double getOffLeaveDays() {
		return offLeaveDays;
	}

	public void setOffLeaveDays(Double offLeaveDays) {
		this.offLeaveDays = offLeaveDays;
	}

	public Double getMaritalLeaveDays() {
		return maritalLeaveDays;
	}

	public void setMaritalLeaveDays(Double maritalLeaveDays) {
		this.maritalLeaveDays = maritalLeaveDays;
	}

	public Double getMaternityLeaveDays() {
		return maternityLeaveDays;
	}

	public void setMaternityLeaveDays(Double maternityLeaveDays) {
		this.maternityLeaveDays = maternityLeaveDays;
	}

	public Double getPaternityLeaveDays() {
		return paternityLeaveDays;
	}

	public void setPaternityLeaveDays(Double paternityLeaveDays) {
		this.paternityLeaveDays = paternityLeaveDays;
	}

	public Double getOtherLeaveDays() {
		return otherLeaveDays;
	}

	public void setOtherLeaveDays(Double otherLeaveDays) {
		this.otherLeaveDays = otherLeaveDays;
	}

	@Override
	protected Serializable pkVal() {
		return id;
	}

	@Override
	public String toString() {
		return "HrAttendance{" +
			"id=" + id +
			", userName=" + userName +
			", time=" + time +
			", supposedDays=" + supposedDays +
			", actualDays=" + actualDays +
			", exceptionDays=" + exceptionDays +
			", leaveDays=" + leaveDays +
			", travelDays=" + travelDays +
			", outDays=" + outDays +
			", overtimeDays=" + overtimeDays +
			", overtimeHours=" + overtimeHours +
			", supposedCount=" + supposedCount +
			", actualCount=" + actualCount +
			", exceptionCount=" + exceptionCount +
			", supplementCount=" + supplementCount +
			", remark=" + remark +
			", annualLeaveDays=" + annualLeaveDays +
			", normalLeaveDays=" + normalLeaveDays +
			", sickLeaveDays=" + sickLeaveDays +
			", offLeaveDays=" + offLeaveDays +
			", maritalLeaveDays=" + maritalLeaveDays +
			", maternityLeaveDays=" + maternityLeaveDays +
			", paternityLeaveDays=" + paternityLeaveDays +
			", otherLeaveDays=" + otherLeaveDays +
			"}";
	}
}
